]>
dgit.raspbian.org Git - pcre2.git/log
Nicholas Wilson [Thu, 27 Aug 2026 15:52:16 +0000 (16:52 +0100)]
Backport of pcre2-10.48-Fix-DFA-workspace-overflows.patch
Cherry-pick of
c932e70451eafef922ebef364ac25042f0031135
Fix DFA workspace overflows; see GHSA-3r4p-g7gg-ppmf for details
(cherry picked from commit
bcaf1ba40748a27e1e666491a0e9887f0f5f2965 )
Nicholas Wilson [Thu, 27 Aug 2026 15:52:16 +0000 (16:52 +0100)]
Backport of pcre2-10.48-Fix-compiler-integer-overflows.patch
Cherry-pick of
ec9c286d5c10cf1c388b58a442ccefded42254fd
Fix compiler integer overflows; see GHSA-fmgr-6ggq-9859 for details
(cherry picked from commit
983158a222ec27a93ce678778f9343f7dfa35845 )
Nicholas Wilson [Thu, 27 Aug 2026 15:52:16 +0000 (16:52 +0100)]
Backport of pcre2-10.48-Fix-invalid-UTF-backwards-scans.patch
Cherry-pick of
4889caf31a4c5a6b3c051f0031bf2dbd78f2c287
Fix invalid UTF backwards-scan reads; see GHSA-9qww-pwc4-77qq for details
(cherry picked from commit
e1fd2e68fe364d14a01ec42bf07201d9820eee8e )
Ilia Alshanetsky [Sun, 9 Aug 2026 11:15:03 +0000 (07:15 -0400)]
Backport of pcre2-10.48-Fix-allocation-byte-sizing.patch
Cherry-pick of
8156b3989a82f2ddf9504d8248496e9b124be7f3
Use CU2BYTES for byte sizing in two allocation sites (#909)
Two allocation sites multiplied by PCRE2_CODE_UNIT_WIDTH (the bit width:
8, 16, or 32) where the CU2BYTES(x) byte-count helper is intended. The
result over-allocates by the code-unit byte width: 8x in 8-bit mode, 16x
in 16-bit, 32x in 32-bit. Subsequent memcpy calls already use CU2BYTES
correctly, so no out-of-bounds write occurs; the over-allocation is
leaked until the buffer is freed.
Also guard each site against integer overflow in
sizeof(pcre2_memctl) + CU2BYTES(N + 1) by rejecting N greater than
(PCRE2_SIZE_MAX - sizeof(pcre2_memctl)) / CU2BYTES(1) - 1.
(cherry picked from commit
31ec59526d641b85108c726fe201effc5dca8627 )
Zoltan Herczeg [Sun, 9 Aug 2026 09:05:54 +0000 (11:05 +0200)]
Backport of pcre2-10.48-Check-JIT-mode-before-validation.patch
Cherry-pick of
f67db227af31bba7cdf2a7a00b97af91b588c2f5 and
e2f100156b94cf85dce9046b47a3274590487de4
Fix pcre2_match to check for JIT support before JIT validation & execution (#926)
This fixes the issue that the JIT branch's UTF validation is not pinned to be identical to the interpreter's validation.
This was not robust, and lead to a bug, in the case where the JIT UTF validation is done, but because the relevant JIT mode was not compiled, it falls through to the interpreter and skips the interpreter's own UTF validation and setup.
Add a testcase for #926 (#940)
(cherry picked from commit
ab7097fbde778e0e4d17752ba2a14a7430d35385 )
Nicholas Wilson [Sat, 8 Aug 2026 18:17:36 +0000 (19:17 +0100)]
Backport of pcre2-10.48-Fix-JIT-match-context-reuse.patch
Cherry-pick of
1dcd0cf42a6a7cb62cc9a7c024196733abcfda95 and
1cad831209af67d24298c301a74c615d3a6d57eb
Fix leak & stale PCRE2_MD_COPIED_SUBJECT if pcre2_jit_match used with existing match context (#937)
The problem is not that pcre2_jit_match() needs to add support for PCRE2_COPY_MATCHED_SUBJECT. Instead, if the passed-in context somehow contains a previously-copied subject (by non-JIT matcher using a global or cached subject) then it will be leaked, and worse, incorrectly free'd later.
pcre2test: honor no_jit when used with jitfast (#946)
`pcre2_jit_match()` ignores the PCRE2_NO_JIT option, so teach pcre2test
to avoid calling it if the subject modifier that sets that option is
used together with the option to call it directly.
While at it, make jitverify more reliable and add a unittest to validate
that PCRE2_NO_JIT is ignored in the fast JIt path.
(cherry picked from commit
e5b9232fc4cd6a0df312ae25568e72cd337cafa2 )
Zoltan Herczeg [Thu, 21 May 2026 03:56:00 +0000 (05:56 +0200)]
Backport of pcre2-10.48-Fix-JIT-STR_END.patch
Cherry-pick of
ff92e0b9cea5b5ae3af12ba930d03556684f098b
Fix setting STR_END in JIT (#912)
When OP_VREVERSE is present in a non-atomic LOOKBEHIND ASSERTION,
the STR_END must be set before the backtracking path is executed.
(cherry picked from commit
0aa5bbca3ac70e6c22562488ead6cb2032447fc5 )
Zoltan Herczeg [Sun, 25 Jan 2026 05:38:11 +0000 (06:38 +0100)]
Backport of pcre2-10.48-Fix-scan-prefix-repeat-reset.patch
Cherry-pick of
7a33b226fe0dc243cbed47fcbe49025ec4aea125
Fix repeat reset for scan prefix (#875)
(cherry picked from commit
f945e356e0ba203a974717af2cff0baee01f1db4 )
Zoltan Herczeg [Tue, 18 Nov 2025 14:19:41 +0000 (15:19 +0100)]
Backport of pcre2-10.48-Fix-character-list-generator.patch
Cherry-pick of
f483bce249c537c482d686234257017dcfb72aaf
Fix character list generator (#841)
(cherry picked from commit
a4318173dab0c332ab7d859f37ac71099326a0f2 )
Nicholas Wilson [Sat, 25 Oct 2025 09:50:27 +0000 (10:50 +0100)]
Backport of pcre2-10.48-Write-serialization-padding.patch
Cherry-pick of
edc111a6831591f68b5355a08cc9df8be8f35304
Write padding values to ensure pcre2_serialize_encode() outputs defined values (#826)
Fixes low-severity valgrind error reported in GHSA-q7rw-r7qq-2hx6.
(cherry picked from commit
efeabb2dc9adfb91abf8feecd8daccb2a38ea94f )
Nicholas Wilson [Fri, 26 Sep 2025 10:37:10 +0000 (11:37 +0100)]
Backport of pcre2-10.47-Fix-for-callback.patch
Cherry-pick of
cc6c84d0207d9d09ca9e42996f0bc50353c03157
Add fix and tests for callback enumerate (#801)
This is a bug in PCRE2 10.45 and 10.46, not present in 10.44 and earlier.
The bug is that applications using pcre2_callout_enumerate() will crash badly on patterns with Unicode (ie non-ASCII) character classes. There is an out-of-bounds read of arbitrary length, including misinterpreting the bytes as offsets, allowing the read to jump forwards in memory to pretty much anywhere.
Applications which call pcre2_callout_enumerate should potentially downgrade to PCRE2 10.44 until we release an update of PCRE2 with the fix.
Since this function is (clearly!!) not used often by applications, I am not currently treating this as very high severity. There is no way for an attacker to make any application call this function, if it is not currently using it.
The root cause seems to be commit
24f9d8d (#540).
---------
Co-authored-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
(cherry picked from commit
16c1b6fb2a45c8bebcc46aa22e7c0b26759b77a0 )
Matthew Vernon [Thu, 28 Aug 2025 07:43:42 +0000 (08:43 +0100)]
changelog for 10.46-1~deb13u1
Matthew Vernon [Thu, 28 Aug 2025 07:42:00 +0000 (08:42 +0100)]
Merge tag '10.46' into dgit/trixie
Upstream version 10.46
Matthew Vernon [Thu, 28 Aug 2025 07:22:23 +0000 (08:22 +0100)]
New upstream version 10.46
Matthew Vernon [Wed, 5 Feb 2025 09:25:24 +0000 (09:25 +0000)]
changelog for 10.45-1
Matthew Vernon [Wed, 5 Feb 2025 09:23:23 +0000 (09:23 +0000)]
New upstream version 10.45
Matthew Vernon [Wed, 5 Feb 2025 09:23:23 +0000 (09:23 +0000)]
Merge tag '10.45'
Upstream version 10.45
Matthew Vernon [Thu, 23 Jan 2025 10:14:43 +0000 (10:14 +0000)]
Update d/copyright to reflect changes sljit path in source
Matthew Vernon [Thu, 23 Jan 2025 10:13:03 +0000 (10:13 +0000)]
Update symbols files for 10.45~rc1
Matthew Vernon [Thu, 23 Jan 2025 09:49:24 +0000 (09:49 +0000)]
changelog for 10.45~rc1-1
Matthew Vernon [Thu, 23 Jan 2025 09:48:07 +0000 (09:48 +0000)]
Merge tag '10.45-rc1'
Upstream version 10.45-rc1
Matthew Vernon [Thu, 23 Jan 2025 09:47:38 +0000 (09:47 +0000)]
Revert "pcre2test: memory reports only compiled memory usage for code/data (#418)"
This reverts commit
c015b7e5bbc8614dd1fddee06aeea9872f938d2c .
This was an upstream fix incorporated early - revert it here to
facilitate merging in upstream 10.45.
Matthew Vernon [Thu, 23 Jan 2025 09:44:53 +0000 (09:44 +0000)]
New upstream version 10.45-rc1
Matthew Vernon [Sun, 8 Dec 2024 13:05:15 +0000 (13:05 +0000)]
changelog for 10.44-5
Matthew Vernon [Sun, 8 Dec 2024 13:04:36 +0000 (13:04 +0000)]
Enable JIT on loong64 (closes: #
1089230 )
Matthew Vernon [Fri, 15 Nov 2024 15:53:15 +0000 (15:53 +0000)]
changelog for 10.44-4
Matthew Vernon [Fri, 15 Nov 2024 15:52:17 +0000 (15:52 +0000)]
Do not enable JIT on armel (Closes: #
1087563 )
Per pcre2jit.3, JIT requires:
ARM 32-bit (v7, and Thumb2)
Per https://wiki.debian.org/ArchitectureSpecificsMemo#armel armel only
offers armv5te
Matthew Vernon [Fri, 15 Nov 2024 14:53:36 +0000 (14:53 +0000)]
Add build-dependency on dh-autoreconf
I think this is also unnecessary when we move to a better dh
compatibility level
Matthew Vernon [Fri, 15 Nov 2024 14:47:32 +0000 (14:47 +0000)]
Changelog for 10.44-3
The upstream fix is
57906628d7babd27c01eb1c085d3e0cdd512189a
Carlo Marcelo Arenas Belón [Sun, 9 Jun 2024 15:22:15 +0000 (08:22 -0700)]
pcre2test: memory reports only compiled memory usage for code/data (#418)
Since
05aafb2 (Implement pcre2_set_max_pattern_compiled_length() and set
this limit in the fuzzer, 2024-04-24), the memory modifier has reported
the full size of the allocated "code" returned by `pcre2_compile`.
Problem is that the size of the structure used to hold that in memory also
depends on the platform ABI and even alignment by the compiler, and has
been therefore fragile to compare.
Revert to reporting only the additional memory that `pcre2_compile()` will
use for the compiled pattern (including any data tables) and make sure
that the limit provided with `pcre2_set_max_pattern_compiled_length()`
also avoid the internal struct overhead.
Fixes: #415
Matthew Vernon [Fri, 15 Nov 2024 14:11:56 +0000 (14:11 +0000)]
Use dh_autoreconf (Closes: #
1087562 )
Note that using dh_autoreconf becomes the default from debhelper
compatibility level 10 onwards, so this should be reverted once we've
made that move.
Matthew Vernon [Thu, 14 Nov 2024 11:40:13 +0000 (11:40 +0000)]
changelog for 10.44-2
Matthew Vernon [Mon, 11 Nov 2024 11:26:03 +0000 (11:26 +0000)]
Add note about libre2-dev (Closes: #
1082901 )
Matthew Vernon [Mon, 11 Nov 2024 11:16:25 +0000 (11:16 +0000)]
Update homepage (Closes: #
1073087 )
It's not quite clear what the future of pcre.org is (it's more
up-to-date thatn when this bug was filed), but at least for now the
github page is a better bet.
Matthew Vernon [Fri, 8 Nov 2024 16:43:28 +0000 (16:43 +0000)]
Update symbols for 1.44
Matthew Vernon [Fri, 8 Nov 2024 16:27:56 +0000 (16:27 +0000)]
changelog for 10.44-1
Matthew Vernon [Fri, 8 Nov 2024 16:26:58 +0000 (16:26 +0000)]
New upstream version 10.44
Matthew Vernon [Fri, 8 Nov 2024 16:26:58 +0000 (16:26 +0000)]
Merge tag '10.44'
Upstream version 10.44
Matthew Vernon [Sat, 17 Feb 2024 10:35:57 +0000 (10:35 +0000)]
Update symbols files for 10.43
Matthew Vernon [Sat, 17 Feb 2024 10:23:36 +0000 (10:23 +0000)]
changelog for 10.43-1
Matthew Vernon [Sat, 17 Feb 2024 10:16:01 +0000 (10:16 +0000)]
New upstream version 10.43
Matthew Vernon [Sat, 17 Feb 2024 10:16:01 +0000 (10:16 +0000)]
Merge tag '10.43'
Upstream version 10.43
Matthew Vernon [Tue, 29 Aug 2023 17:23:52 +0000 (18:23 +0100)]
changelog for 10.42-4
Matthew Vernon [Tue, 29 Aug 2023 17:22:58 +0000 (18:22 +0100)]
Compile JIT on riscv64 (Closes: #
1050819 )
Not quite the submitter's patch, because I got distracted by the arch
list not being sorted...
Matthew Vernon [Tue, 29 Aug 2023 17:21:34 +0000 (18:21 +0100)]
Sort jit archs list
Matthew Vernon [Mon, 21 Aug 2023 10:44:16 +0000 (11:44 +0100)]
changelog for 10.42-3
Matthew Vernon [Mon, 21 Aug 2023 10:43:25 +0000 (11:43 +0100)]
Specify source format 1.0 explicitly (Closes: #
1049910 )
Matthew Vernon [Tue, 11 Jul 2023 22:11:16 +0000 (23:11 +0100)]
Changelog for 10.42-2
Matthew Vernon [Tue, 11 Jul 2023 22:10:29 +0000 (23:10 +0100)]
disable JIT on sparc (Closes: #
1034779 )
Matthew Vernon [Sun, 1 Jan 2023 15:44:19 +0000 (15:44 +0000)]
Changelog for 10.42-1
Matthew Vernon [Sun, 1 Jan 2023 15:43:12 +0000 (15:43 +0000)]
Merge tag '10.42'
Upstream version 10.42
Matthew Vernon [Sun, 1 Jan 2023 15:43:11 +0000 (15:43 +0000)]
New upstream version 10.42
Matthew Vernon [Fri, 2 Dec 2022 17:40:50 +0000 (17:40 +0000)]
changelog for 10.40-3
Matthew Vernon [Fri, 2 Dec 2022 17:40:36 +0000 (17:40 +0000)]
Support the noudeb build profile (Helmut Grohne). (Closes: #
1024941 )
Matthew Vernon [Sun, 23 Oct 2022 15:14:48 +0000 (16:14 +0100)]
changelog for 10.40-2
Bastian Germann [Fri, 17 Jun 2022 11:05:18 +0000 (13:05 +0200)]
d/watch: Remove non-functional filenamemangle
The filenamemangle with the <project> template breaks downloading.
Bastian Germann [Fri, 17 Jun 2022 10:48:01 +0000 (12:48 +0200)]
d/copyright: Convert to machine-readable format
Include missing licenses on conversion:
BSD-2-clause
BSD-3-clause
X11
Bastian Germann [Fri, 17 Jun 2022 09:46:48 +0000 (11:46 +0200)]
d/copyright: Correct the source URL (Closes: #
1012679 )
Matthew Vernon [Mon, 25 Apr 2022 16:11:26 +0000 (17:11 +0100)]
update watch file to note new upstream repo name
There's now a PCRE2Project rather than just being under the author's
personal github space.
Matthew Vernon [Mon, 25 Apr 2022 16:10:59 +0000 (17:10 +0100)]
changelog for 10.40-1
Matthew Vernon [Mon, 25 Apr 2022 16:03:54 +0000 (17:03 +0100)]
New upstream version 10.40
Matthew Vernon [Mon, 25 Apr 2022 16:03:54 +0000 (17:03 +0100)]
Merge tag '10.40'
Upstream version 10.40
Matthew Vernon [Mon, 11 Apr 2022 08:24:08 +0000 (09:24 +0100)]
changelog for 10.39-4
Carlo Marcelo Arenas Belón [Mon, 11 Apr 2022 08:22:31 +0000 (09:22 +0100)]
Upstream patch: fix build for Hurd (#52) (closes: #
1009066 )
Since
d5a61ee8 (Patch to detect (and ignore) symlink loops in
pcre2grep., 2021-08-28), there is optional code that depends
on readlink and PATH_MAX but that had only detection added for
the first.
GNU Hurd doesn't have the later so it fails to build.
Improve the detection to include both dependencies in autotools
and cmake to fix that.
Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
Signed-off-by: Matthew Vernon <matthew@debian.org>
Matthew Vernon [Wed, 17 Nov 2021 14:52:52 +0000 (14:52 +0000)]
changelog for 10.39-3
Matthew Vernon [Wed, 17 Nov 2021 14:52:07 +0000 (14:52 +0000)]
re-enable MIPS JIT support (Closes: #892488)
upstream fixed this a while back
Matthew Vernon [Wed, 17 Nov 2021 14:48:26 +0000 (14:48 +0000)]
Enable JIT on s390x (Closes: #999836)
Matthew Vernon [Mon, 8 Nov 2021 23:47:29 +0000 (23:47 +0000)]
changelog for 10.39-2
Matthew Vernon [Mon, 8 Nov 2021 23:46:18 +0000 (23:46 +0000)]
Relax Depends: to libc-dev (Closes: #989729)
Matthew Vernon [Mon, 8 Nov 2021 10:25:53 +0000 (10:25 +0000)]
clarify what the -{8,16,32} runtimes are for
This arose from discussion in #978013; clarify the long descriptions
of the runtime packages.
Matthew Vernon [Sat, 6 Nov 2021 13:56:01 +0000 (13:56 +0000)]
soname of libpcre2-posix is now 3
Matthew Vernon [Sat, 6 Nov 2021 13:50:48 +0000 (13:50 +0000)]
changelog for 10.39-1
Matthew Vernon [Sat, 6 Nov 2021 13:40:58 +0000 (13:40 +0000)]
Update watch file to reflect new hosting location
(thanks to authors of https://wiki.debian.org/debian/watch !)
Matthew Vernon [Sat, 6 Nov 2021 13:19:48 +0000 (13:19 +0000)]
New upstream version 10.39
Matthew Vernon [Sat, 6 Nov 2021 13:19:48 +0000 (13:19 +0000)]
Merge tag '10.39'
Upstream version 10.39
Matthew Vernon [Sun, 13 Dec 2020 16:23:20 +0000 (16:23 +0000)]
changelog for 10.36-2
Matthew Vernon [Mon, 7 Dec 2020 12:38:08 +0000 (12:38 +0000)]
changelog for 10.36-1
Matthew Vernon [Mon, 7 Dec 2020 12:34:51 +0000 (12:34 +0000)]
Update watch file (previous site is gone)
Matthew Vernon [Mon, 7 Dec 2020 12:33:40 +0000 (12:33 +0000)]
New upstream version 10.36
Matthew Vernon [Mon, 7 Dec 2020 12:33:40 +0000 (12:33 +0000)]
Merge tag '10.36'
Upstream version 10.36
Matthew Vernon [Fri, 4 Dec 2020 09:52:14 +0000 (09:52 +0000)]
Changelog for 10.35-2
Matthew Vernon [Fri, 27 Nov 2020 09:51:08 +0000 (09:51 +0000)]
changelog for 10.35-1
Matthew Vernon [Fri, 27 Nov 2020 09:50:51 +0000 (09:50 +0000)]
bump standards-version (no changes needed)
Matthew Vernon [Fri, 27 Nov 2020 09:24:14 +0000 (09:24 +0000)]
New upstream version 10.35
Matthew Vernon [Fri, 27 Nov 2020 09:24:14 +0000 (09:24 +0000)]
Merge tag '10.35'
Upstream version 10.35
Matthew Vernon [Sat, 7 Dec 2019 17:07:12 +0000 (17:07 +0000)]
changelog for 10.34-7
Matthew Vernon [Sat, 7 Dec 2019 17:05:51 +0000 (17:05 +0000)]
Upstream patch for rspamd segfault (Closes: #946221)
Matthew Vernon [Sat, 7 Dec 2019 14:34:35 +0000 (14:34 +0000)]
Changelog for 10.34-6
Matthew Vernon [Fri, 6 Dec 2019 16:06:33 +0000 (16:06 +0000)]
Replace and Conflict libpcre2-posix0 (closes: #946279)
This is a bit sad, but because libpcre2-posix0 didn't reflect the
soname change to 2, the new package libpcre2-posix2 that _does_
reflect the soname change needs to replace and conflict with the new
version
Matthew Vernon [Tue, 3 Dec 2019 21:14:44 +0000 (21:14 +0000)]
changelog for 10.34-5
Matthew Vernon [Tue, 3 Dec 2019 19:24:45 +0000 (19:24 +0000)]
changelog for 10.34-4
Matthew Vernon [Tue, 3 Dec 2019 19:24:30 +0000 (19:24 +0000)]
Add symbols files (Closes: #945973)
Matthew Vernon [Tue, 3 Dec 2019 19:22:43 +0000 (19:22 +0000)]
libpcre2-posix soname change 0->2, update package name to match
Matthew Vernon [Mon, 2 Dec 2019 11:58:42 +0000 (11:58 +0000)]
changelog for 10.34-3
Matthew Vernon [Mon, 2 Dec 2019 11:58:15 +0000 (11:58 +0000)]
Remove -dbg package from control
Matthew Vernon [Mon, 2 Dec 2019 11:22:39 +0000 (11:22 +0000)]
Changelog for 10.34-2
Matthew Vernon [Mon, 2 Dec 2019 11:20:38 +0000 (11:20 +0000)]
drop libpcre2-dbg in favour of dbgsym (closes: #891624)
Patch from Michael Biebl <biebl@debian.org>
Matthew Vernon [Mon, 2 Dec 2019 11:18:25 +0000 (11:18 +0000)]
try upstream commit to fix FTBFS on ARM
Matthew Vernon [Thu, 28 Nov 2019 16:28:48 +0000 (16:28 +0000)]
changelog for 10.34-1
Matthew Vernon [Thu, 28 Nov 2019 16:27:19 +0000 (16:27 +0000)]
Merge branch 'upstream'
Take upstream's version of pcre2_jit_compile.c (the fix to #925360 is
moved elsewhere by upstream).